package com.hs.srm.admin.modules.requisition.entity;

import java.io.Serializable;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import cn.afterturn.easypoi.excel.annotation.Excel;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hs.srm.base.common.annotation.DictMapping;
import com.hs.srm.base.common.utils.DictDataUtil.DictType;

 /*
  * 
 */
@Setter
@Getter
@TableName("supply_goods")
@ToString
public class SupplyGoodsEntity implements Serializable {

  private static final long serialVersionUID = 1L;
  
  public SupplyGoodsEntity() {
	super();
  }
  
  /*
   * 采购申请编码
  */
  @TableField("request_code")
  @Excel(name = "采购申请编码", orderNum="1")
  private java.lang.String requestCode;
  
  /*
   * 采购申请行项目的pkid
  */
  @TableField("npk_id")
  @Excel(name = "采购申请行项目的pkid", orderNum="2")
  private java.lang.String npkId;
  
  /*
   * 报价单ID
  */
  @TableField("quotation_id")
  @Excel(name = "报价单ID", orderNum="3")
  private java.lang.String quotationId;
  
  /*
   * 货源分配所得数量
  */
  @TableField("quantity")
  @Excel(name = "货源分配所得数量", orderNum="4")
  private java.math.BigDecimal quantity;
  
  /*
   * 采购申请抬头id
  */
  @TableField("pk_id")
  @Excel(name = "采购申请抬头id", orderNum="5")
  private java.lang.String pkId;
  
  /*
   * 申请数量
  */
  @TableField("apply_qty")
  @Excel(name = "申请数量", orderNum="6")
  private java.math.BigDecimal applyQty;
  
  /*
   * 行项目号
  */
  @TableField("purch_request_item_code")
  @Excel(name = "行项目号", orderNum="7")
  private java.lang.String purchRequestItemCode;
  
  /*
   * 备注
  */
  @TableField("remark")
  @Excel(name = "备注", orderNum="8")
  private java.lang.String remark;
  
  /*
   * 0货源分配,1以产生订单
  */
  @TableField("stat")
  @Excel(name = "0货源分配,1以产生订单", orderNum="9")
  private java.lang.Integer stat;
  
  /*
   * 联合主键
  */
  @TableId(value = "npk_id_item_code", type = IdType.UUID)
  @TableField("npk_id_item_code")
  @Excel(name = "联合主键", orderNum="10")
  private java.lang.String npkIdItemCode;
  
  /*
   * 国际贸易条款
  */
  @TableField("i18n_trade_terms")
  @Excel(name = "国际贸易条款", orderNum="11")
  private java.lang.String i18nTradeTerms;
  
  /*
   * 付款条件
  */
  @TableField("pay_terms_purchase")
  @Excel(name = "付款条件", orderNum="12")
  private java.lang.String payTermsPurchase;
  
  /*
   * 公司代码
  */
  @TableField("factory")
  @Excel(name = "公司代码", orderNum="13")
  private java.lang.String factory;
  
  /*
   * 采购凭证类型
  */
  @TableField("purchase_type")
  @Excel(name = "采购凭证类型", orderNum="14")
  private java.lang.String purchaseType;
  
   @DictMapping(type = DictType.KCDD)
   private String storageLocation;//库存地址
   
   @DictMapping(type = DictType.CGSQLX)
   private String purchRequestType;//采购申请类型
  
  //非生产性采购订单
  private NproPurchRequestItemEntity nproPurchRequestItemEntity;
  //生产性采购订单
  private ProPurchRequestItemEntity proPurchRequestItemEntity;
  
}
